The present invention relates to a computer network system and communications nodes constituting the computer network system, and more particularly, it relates to a technique to conduct efficient communications in a network system of channel-type interconnection.
In a computer system, a network connected through cables or the like is generally formed so that data can be transferred among individual components. A network system is realized by interconnecting communications nodes of the respective components through buses. Since a bus for connecting the communication nodes has a single channel, plural communications nodes cannot simultaneously communicate with one another. Therefore, in order to efficiently conduct communications in a network system, the respective communications nodes are required to use buses in accordance with predetermined protocol.
An example of such protocols is IEEE 1394 xe2x80x9cStandard for a High Performance Serial Busxe2x80x9d. In this protocol, in transmitting a signal to a bus, a communications node attempts to gain bus access permission by conducting arbitration. The arbitrations of communications nodes are mediated by a route node singly existing in the network system, and bus access permission is given to merely one communications node among those having conducted the arbitration. The other communications nodes that have conducted the arbitration but cannot gain the bus access permission should wait for a next chance of arbitration so as to conduct arbitration again. This guarantees that merely one communications node transmits a signal to a bus.
The bus architecture is always initialized when power is turned on or when the configuration of the network is changed due to addition or deletion of communications nodes, and is uniquely determined in accordance with connection states and requests from hosts and other communications nodes so as to be kept without change until next initialization. In other words, determination of the bus architecture means determination of node numbers of communications nodes and their attributes whether or not they are a root node.
Next, data communication will be described. A communications node that has gained bus access permission starts to send a data. A communications node that has received the data checks the destination of the received data. When the communications node itself is the destination, it fetches the data, and when not, it repeats the data to a port other than the port having received the data.
FIG. 16 is a diagram for showing data transfer in a conventional network system. In FIG. 16 each circle corresponds to a communications node and a numerical value within each circle indicates a node number of the communication nodes. Also, a line connecting the circles indicates a bus between the communications nodes. FIG. 16 shows data communications for sending a data from a node 3 to a node 4. The node 3 sends the data to a node 8, and the node 8 repeats the received data to nodes 2, 4 and 7 connected thereto.
Similarly, the node 2 repeats the received data to nodes 0 and 1 connected thereto, and the node 7 repeats the received data to nodes 5 and 6 connected thereto. The node 4 recognizes that the node 4 itself is the destination of the received data and fetches the received data. In this manner, the data is transferred through all the communications nodes.
As is shown in FIG. 16, when one communications node conducts data transfer in the conventional network system, all the other communications nodes repeat the data. Therefore, communications nodes not concerned in the data transfer should repeat the received data to the other communications nodes, and hence, it is necessary to wait for the completion of the data transfer before executing arbitration. Accordingly, the conventional network system is disadvantageously poor in the use efficiency. In the conventional technique, the waiting time of a network user is apparently reduced by sharing data transfer by time.
An object of the invention is, in a network system including a plurality of communications nodes connected through buses, improving the use efficiency of the buses in data transfer.
Specifically, the communications node of this invention is included in a network system, comprises a plurality of ports; means for repeating, in receiving a data, the received data to a port among the ports capable of data transfer to a destination communications node of the data; and means for outputting, in receiving the data, to other ports thereof, an NW (now working) signal indicating that a data is being transferred, and in receiving an NW signal at a root port thereof, the communications node operates to form a local network capable of independent data transfer therein together with other communications nodes to which data is transferable from the ports thereof other than the root port.
According to the communications node of this invention, when a data is received, the communications node repeats the received data to merely a port capable of transferring the data to a destination node. To the other ports, the communications node outputs an NW signal indicating that the data is being transferred. Furthermore, when the communications node receives an NW signal at its root port, a local network capable of independent data transfer therein is formed by this communications node and other nodes to which data can be transferred from ports other than the root port thereof. As a result, the range of data transfer can be suppressed to a necessary minimum, and a data is never transferred to communications nodes not concerned in the data transfer. Therefore, each communications node can be prevented from postponing its own processing due to unnecessary data receipt and repeat. Furthermore, since the local network capable of independent data transfer therein is formed by the communications nodes not concerned in the data transfer, plural data transfer can be executed in parallel in point of time. Accordingly, the bus use efficiency in data transfer can be improved, and power consumption can be reduced by avoiding unnecessary data receipt and repeat.
In the communications node of the invention, in receiving the NW signal at the root port, if the communications node has a function as a root node, the communications node preferably starts to operate as a local root node for controlling arbitration in the local network, and if the communications node does not have a function as a root node, the communications node preferably sends a local root node setting signal for directing any of the other communications nodes to operate as a local root node. Furthermore, when the communications node of the invention sends the local root node setting signal, the communications node preferably cancels recognition of the original root port having received the NW signal and recognizes a port having sent the local root node setting signal as a new root port. Moreover, when receipt of the NW signal at the original root port is terminated, if the communications node is a local root node, the communications node preferably stops operating as the local root node, and if the communications node is not a local root node, the communications node preferably sends a local root node canceling signal for directing another communications node operating as a local root node to stop operating as the local root node.
Furthermore, in initialization of the network, the communications node of the invention preferably sends information on the communications node from the respective ports thereof and stores information on other communications nodes received at the respective ports thereof. In addition, the communications node of the invention preferably identifies a port for sending a data by comparing a node number of the destination communications node of the data with node numbers of other communications nodes to which data is transferable from the respective ports thereof included in the information stored in the initialization of the network.
Moreover, in receiving a data, when a port capable of data transfer to the destination communications node of the data is not in a transferable state, the communications node of the invention preferably sends a signal indicating that the data is untransferable to a port capable of data transfer to a sender communication node of the data.
Additionally, the communications node of the invention preferably has a function to specify a broadcast communication time.
Furthermore, in the communications node of the invention, when an NW signal or an RNW signal corresponding to a repeated NW signal is received at a port other than the root port, the communications node preferably repeats the RNW signal to the root port, a signal is preferably not received at a port sending an NW signal, and a signal received at another port is preferably repeatable to a port sending or receiving an RNW signal, and when an arbitration signal is received at a port sending an RNW signal, the communications node preferably terminates sending the RNW signal.
Alternatively, the network system of this invention comprises a plurality of communications nodes of this invention connected through buses.
Alternatively, the method of this invention of controlling network system including a plurality of communications nodes connected through buses, comprises the steps of specifying a data transfer path in sending a data from one communications node to another communications node; and forming a local network capable of independent data transfer therein by communications nodes not belonging to the data transfer path.
In the method of controlling a network system of this invention, the local network capable of independent data transfer therein is formed by communications nodes not belonging to the specified data transfer path, and hence, plural data transfer can be executed in parallel in point of time. Accordingly, the bus use efficiency in data transfer can be improved. Also, power consumption can be reduced by avoiding unnecessary data receipt and repeat.
The method of controlling a network system of this invention preferably further comprises a step of setting one communications node belonging to the local network as a local root node for mediating arbitration in the local network.